<?php
/**
 * Free Uch Common Functions
 *
 * @category   FreeUch
 * @copyright  Copyright 2009 lordharrdlee(http://www.lordharrdlee.cn)
 * @author     lordharrdlee<lordharrdlee@gmail.com>
 * @version    $Id: common.php 4 2010-01-13 06:51:42Z lordharrdlee $
 */

/**
 * 更新服务器推新通知检测文件
 *
 * @param $query
 * @param $sql
 */
function updatenewnoticefile($query, $sql) {
	if($query && strtolower(substr($sql,0,6))=='update') {
		preg_match("/update ".tname('space')."(?:.+)(notenum|pokenum|addfriendnum|mtaginvitenum|eventinvitenum|myinvitenum)(?:.+)where(?:[`\s]+)uid(?:[in`'=\s\(]+)([\d,]+)(?:[\)'\s]+)?(?:.+)$/is", $sql, $matchs);
		if($matchs[1] && $matchs[2]) {
			$uid = intval($matchs[2]);
			if ($uid) {
				$newnoticefile = getnewnoticefile($uid);
				file_put_contents($newnoticefile,$uid);
			} else {
				$uids = explode(",",$uid);
				foreach ($uids as $value) {
					$newnoticefile = getnewnoticefile($value);
					file_put_contents($newnoticefile,$value);
				}
			}
		}
	}
}

/**
 * 获取用户新通知检测文件
 *
 * @param $uid
 * @return unknown_type
 */
function getnewnoticefile($uid) {
	$dir = S_ROOT.'./data/temp';
	$uid = sprintf("%09d", $uid);
	$dir1 = substr($uid, 0, 3);
	$dir2 = substr($uid, 3, 2);
	$dir3 = substr($uid, 5, 2);
	!is_dir($dir.'/'.$dir1) && mkdir($dir.'/'.$dir1, 0777);
	!is_dir($dir.'/'.$dir1.'/'.$dir2) && mkdir($dir.'/'.$dir1.'/'.$dir2, 0777);
	!is_dir($dir.'/'.$dir1.'/'.$dir2.'/'.$dir3) && mkdir($dir.'/'.$dir1.'/'.$dir2.'/'.$dir3, 0777);
	return $dir.'/'.$dir1.'/'.$dir2.'/'.$dir3.'/'.'checknew'.$uid.'.txt';
}

function show404() {
    throw new Exception('对不起，您所请求的页面不存在');
    exit;
}